<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>TP2 air-GLOIFT: Référence de la classe Graphe&lt; Objet &gt; (modèle)</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Généré par Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">TP2 air-GLOIFT&#160;<span id="projectnumber">1.0</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Page&#160;principale</span></a></li>
      <li><a href="namespaces.html"><span>Espaces&#160;de&#160;nommage</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Fichiers</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Liste&#160;des&#160;classes</span></a></li>
      <li><a href="functions.html"><span>Membres&#160;de&#160;classe</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('class_graphe.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Fonctions membres publiques</a> &#124;
<a href="#pri-methods">Fonctions membres privées</a> &#124;
<a href="#pri-attribs">Attributs privés</a> &#124;
<a href="#friends">Amis</a>  </div>
  <div class="headertitle">
<div class="title">Référence de la classe Graphe&lt; Objet &gt; (modèle)</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="Graphe" -->
<p>Classe représentant un graphe orienté, coloré dont les étiquettes sont des comparables.  
 <a href="class_graphe.html#details">Plus de détails...</a></p>

<p><code>#include &lt;Graphe.h&gt;</code></p>
<div class="dynheader">
Graphe de collaboration de Graphe&lt; Objet &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe__coll__graph.png" border="0" usemap="#_graphe_3_01_objet_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="_graphe_3_01_objet_01_4_coll__map" id="_graphe_3_01_objet_01_4_coll__map">
<area shape="rect" id="node2" href="class_graphe_1_1_sommet.html" title="Classe représentant un sommet dans un graphe." alt="" coords="77,14,256,41"/><area shape="rect" id="node4" href="class_graphe_1_1_arc.html" title="Classe interne représentant un arc entre deux sommets dans le graphe." alt="" coords="157,113,307,139"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">légende</a>]</span></center></div>

<p><a href="class_graphe-members.html">Liste de tous les membres</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe_1_1_arc.html">Arc</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Classe interne représentant un arc entre deux sommets dans le graphe.  <a href="class_graphe_1_1_arc.html#details">Plus de détails...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Classe représentant un sommet dans un graphe.  <a href="class_graphe_1_1_sommet.html#details">Plus de détails...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Fonctions membres publiques</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#adb8383352920cc36b73929998c90db53">Graphe</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructeur par défaut.  <a href="#adb8383352920cc36b73929998c90db53"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#ab92769924f1e76dd5e3872c1e85b229c">Graphe</a> (const <a class="el" href="class_graphe.html">Graphe</a> &amp;source)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructeur de copie.  <a href="#ab92769924f1e76dd5e3872c1e85b229c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#af33551f1cd40e11d7a1983628d3d5641">~Graphe</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructeur.  <a href="#af33551f1cd40e11d7a1983628d3d5641"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a398d9e6777b28dd6a5ee1572f5128498">ajouterSommet</a> (int numero, const Objet &amp;etiquette)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Ajout d'un sommet au graphe.  <a href="#a398d9e6777b28dd6a5ee1572f5128498"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a70470e6b8b0ea59097c1a9a96e631f45">enleverSommet</a> (int numero)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enlève un sommet du graphe ainsi que tous les arcs qui vont et partent de ce sommet.  <a href="#a70470e6b8b0ea59097c1a9a96e631f45"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a3324e98fb20348bff3ffec78675b0ce5">ajouterArc</a> (int numOrigine, int numDestination, int cout)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Ajout d'un arc au graphe.  <a href="#a3324e98fb20348bff3ffec78675b0ce5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#aa97c99653199bf922b44e07de8be0a99">enleverArc</a> (int numOrigine, int numDestination)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enlève un arc du graphe.  <a href="#aa97c99653199bf922b44e07de8be0a99"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a822c112c79faa409d2eeb95a9c2c4e7c">nombreSommets</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne le nombre de sommets dans la liste des sommets.  <a href="#a822c112c79faa409d2eeb95a9c2c4e7c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#afd8eb5bce922c62b2d5814dd95decf3e">estVide</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Indique si la liste des sommets est vide.  <a href="#afd8eb5bce922c62b2d5814dd95decf3e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#aedac4305a983b11ea0420ba80343635e">listerSommets</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne la liste des numéros des sommets dans un vecteur d'entiers.  <a href="#aedac4305a983b11ea0420ba80343635e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; Objet &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a998f2dd61188d540e7789b6ea631e548">listerEtiquetteSommets</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne la liste des étiquettes des sommets dans un vecteur.  <a href="#a998f2dd61188d540e7789b6ea631e548"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a0de2ca6fa1f02d95fde97306217d2031">getNumeroSommet</a> (const Objet &amp;etiquette) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne le numéro d'un sommet selon son etiquette.  <a href="#a0de2ca6fa1f02d95fde97306217d2031"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#af9a087a2a780133f651af51fb25de677">sommetExiste</a> (int numero) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne l'existence d'un sommet.  <a href="#af9a087a2a780133f651af51fb25de677"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">Objet&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#af6efac3e9c660c4aacfa05c6bcba7ddf">getEtiquetteSommet</a> (int numero) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne l'étiquette d'un sommet.  <a href="#af6efac3e9c660c4aacfa05c6bcba7ddf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a48e32c28c0845c0e112a3a3ae7bdb882">ordreSortieSommet</a> (int numero) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne l'ordre de sortie d'un sommet.  <a href="#a48e32c28c0845c0e112a3a3ae7bdb882"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a1123929cab8c05d7fc3f7a4317e88edb">ordreEntreeSommet</a> (int numero) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne l'ordre d'entrée d'un sommet.  <a href="#a1123929cab8c05d7fc3f7a4317e88edb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a73fe579de3baea2990bbefb2b0daf0c9">listerSommetsAdjacents</a> (int numeroSommetsAdjacents) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne la liste des numéros des sommets adjacents au sommet passé en argument dans un vecteur d'entiers.  <a href="#a73fe579de3baea2990bbefb2b0daf0c9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a866fbd9e68914829c900b2f3a2ef3565">arcExiste</a> (int numOrigine, int numDestination) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne l'existence d'un arc.  <a href="#a866fbd9e68914829c900b2f3a2ef3565"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a5178a5335a20e3a549af0b69c9c83782">getCoutArc</a> (int numOrigine, int numDestination) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retourne le coût d'un arc passé en argument.  <a href="#a5178a5335a20e3a549af0b69c9c83782"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_graphe.html">Graphe</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#aff62a5ca152f992f32671db122d47455">operator=</a> (const <a class="el" href="class_graphe.html">Graphe</a> &amp;source)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Surcharge de l'opérateur d'affectation.  <a href="#aff62a5ca152f992f32671db122d47455"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_graphe.html">Graphe</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#aa6fafc310fd5a096f75d018c7404f9ed">fermetureGraphe</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Déterminer la fermeture transitive du graphe.  <a href="#aa6fafc310fd5a096f75d018c7404f9ed"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#abdc4f27fc9498cc3814d03a97c87b7e7">estFortementConnexe</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Détermine si le graphe est fortement connexe ou non.  <a href="#abdc4f27fc9498cc3814d03a97c87b7e7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#ad63af90bd6395092dfe311a36f15833c">getComposantesFortementConnexes</a> (std::vector&lt; std::vector&lt; Objet &gt; &gt; &amp;composantes) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Détermine les composantes fortement connexes et les mémorise dans un conteneur passé en paramètre.  <a href="#ad63af90bd6395092dfe311a36f15833c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a077802b65dad92e0d7e593abbca17478">bellmanFord</a> (const Objet &amp;eOrigine, const Objet &amp;eDestination, std::vector&lt; Objet &gt; &amp;chemin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Trouve le plus court chemin entre deux points en utilisant l'algorithme de Bellman-Ford et le retourne.  <a href="#a077802b65dad92e0d7e593abbca17478"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a46ea944cd82af0d14b67ed66ac57261f">dijkstra</a> (const Objet &amp;eOrigine, const Objet &amp;eDestination, std::vector&lt; Objet &gt; &amp;chemin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Trouve le plus court chemin entre deux points en utilisant l'algorithme de Dijsktra et le retourne.  <a href="#a46ea944cd82af0d14b67ed66ac57261f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#acf31ba4346b58850d69ba22ee75bdf48">getPointsArticulation</a> (std::vector&lt; Objet &gt; &amp;sommets)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Trouve les points d'articulation du graphe et les retourne.  <a href="#acf31ba4346b58850d69ba22ee75bdf48"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pri-methods"></a>
Fonctions membres privées</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e">_getSommet</a> (int numero) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Trouve l'adresse d'un sommet à partir de son numéro.  <a href="#ac798e3b65595635aaf3e2f83e9a4c58e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_graphe_1_1_arc.html">Arc</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a9fbaf9ed9c0bd7b57b76d0dc0ea453d9">_getArc</a> (<a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *sommet1, <a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *sommet2) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Trouve l'adresse d'un arc entre deux sommets.  <a href="#a9fbaf9ed9c0bd7b57b76d0dc0ea453d9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a8405369dbe4854dd624e140539717fab">_detruireGraphe</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destruction du graphe.  <a href="#a8405369dbe4854dd624e140539717fab"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a1b8cfc5964a91ed326b4db134471d6e0">_copierGraphe</a> (const <a class="el" href="class_graphe.html">Graphe</a> &amp;source)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Copie d'un graphe.  <a href="#a1b8cfc5964a91ed326b4db134471d6e0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a2c22cb6d5282d83c940872ec52327d5e">_enleverSommet</a> (<a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *sommetAEnlever)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enlever un sommet à partir de son adresse.  <a href="#a2c22cb6d5282d83c940872ec52327d5e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#aae4a7becaa21116b48dbe8d0fbd4a57d">_initPathFinding</a> (const Objet &amp;eOrigine, const Objet &amp;eDestination, <a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&amp;origine, <a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&amp;destination)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialise les sommets du graphe dans le but d'utiliser des méthodes pour trouver des chemins.  <a href="#aae4a7becaa21116b48dbe8d0fbd4a57d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#ad45ebb3761173879209aca61ed7d825b">_recupererChemin</a> (<a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *destination, std::vector&lt; Objet &gt; &amp;chemin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Récupère le chemin à partir d'un vector dans les données sont inversées.  <a href="#ad45ebb3761173879209aca61ed7d825b"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pri-attribs"></a>
Attributs privés</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#a68b553a71b69dba498e36aa2f22525af">nbSommets</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Le nombre de sommets dans le graphe.  <a href="#a68b553a71b69dba498e36aa2f22525af"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_graphe.html#acf9528aa62599ce05830f02df42af339">listSommets</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Liste des sommets du graphe.  <a href="#acf9528aa62599ce05830f02df42af339"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Amis</h2></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class U &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_graphe.html#a418117b04914b57a9a0f6202b519ceee">operator&lt;&lt;</a> (std::ostream &amp;out, const <a class="el" href="class_graphe.html">Graphe</a>&lt; U &gt; &amp;g)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Description détaillée</h2>
<div class="textblock"><h3>template&lt;typename Objet&gt;<br/>
class Graphe&lt; Objet &gt;</h3>

<p>Classe représentant un graphe orienté, coloré dont les étiquettes sont des comparables. </p>
</div><hr/><h2>Documentation des constructeurs et destructeur</h2>
<a class="anchor" id="adb8383352920cc36b73929998c90db53"></a><!-- doxytag: member="Graphe::Graphe" ref="adb8383352920cc36b73929998c90db53" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::<a class="el" href="class_graphe.html">Graphe</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructeur par défaut. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Un graphe vide est créé </dd></dl>

</div>
</div>
<a class="anchor" id="ab92769924f1e76dd5e3872c1e85b229c"></a><!-- doxytag: member="Graphe::Graphe" ref="ab92769924f1e76dd5e3872c1e85b229c" args="(const Graphe &amp;source)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::<a class="el" href="class_graphe.html">Graphe</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt; &amp;&#160;</td>
          <td class="paramname"><em>source</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructeur de copie. </p>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">source</td><td>La source du graphe à copier </td></tr>
  </table>
  </dd>
</dl>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il y a assez de mémoire pour copier le graphe 'source' </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">bad_alloc</td><td>Il n'y a pas assez de mémoire pour copier le graphe 'source' </td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_ab92769924f1e76dd5e3872c1e85b229c_cgraph.png" border="0" usemap="#class_graphe_ab92769924f1e76dd5e3872c1e85b229c_cgraph" alt=""/></div>
<map name="class_graphe_ab92769924f1e76dd5e3872c1e85b229c_cgraph" id="class_graphe_ab92769924f1e76dd5e3872c1e85b229c_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a1b8cfc5964a91ed326b4db134471d6e0" title="Copie d&#39;un graphe." alt="" coords="169,31,325,57"/><area shape="rect" id="node5" href="class_graphe.html#a8405369dbe4854dd624e140539717fab" title="Destruction du graphe." alt="" coords="374,5,541,32"/><area shape="rect" id="node7" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="384,56,531,83"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="af33551f1cd40e11d7a1983628d3d5641"></a><!-- doxytag: member="Graphe::~Graphe" ref="af33551f1cd40e11d7a1983628d3d5641" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::~<a class="el" href="class_graphe.html">Graphe</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructeur. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe est détruit </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_af33551f1cd40e11d7a1983628d3d5641_cgraph.png" border="0" usemap="#class_graphe_af33551f1cd40e11d7a1983628d3d5641_cgraph" alt=""/></div>
<map name="class_graphe_af33551f1cd40e11d7a1983628d3d5641_cgraph" id="class_graphe_af33551f1cd40e11d7a1983628d3d5641_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a8405369dbe4854dd624e140539717fab" title="Destruction du graphe." alt="" coords="177,5,343,32"/></map>
</div>
</p>

</div>
</div>
<hr/><h2>Documentation des fonctions membres</h2>
<a class="anchor" id="a1b8cfc5964a91ed326b4db134471d6e0"></a><!-- doxytag: member="Graphe::_copierGraphe" ref="a1b8cfc5964a91ed326b4db134471d6e0" args="(const Graphe &amp;source)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::_copierGraphe </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt; &amp;&#160;</td>
          <td class="paramname"><em>source</em></td><td>)</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copie d'un graphe. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Une copie profonde à partir du graphe source a été effectuée </dd></dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">source</td><td>Le graphe à copier </td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a1b8cfc5964a91ed326b4db134471d6e0_cgraph.png" border="0" usemap="#class_graphe_a1b8cfc5964a91ed326b4db134471d6e0_cgraph" alt=""/></div>
<map name="class_graphe_a1b8cfc5964a91ed326b4db134471d6e0_cgraph" id="class_graphe_a1b8cfc5964a91ed326b4db134471d6e0_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a8405369dbe4854dd624e140539717fab" title="Destruction du graphe." alt="" coords="211,5,378,32"/><area shape="rect" id="node5" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="221,56,368,83"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a8405369dbe4854dd624e140539717fab"></a><!-- doxytag: member="Graphe::_detruireGraphe" ref="a8405369dbe4854dd624e140539717fab" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::_detruireGraphe </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destruction du graphe. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>La graphe est entièrement supprimé </dd></dl>

</div>
</div>
<a class="anchor" id="a2c22cb6d5282d83c940872ec52327d5e"></a><!-- doxytag: member="Graphe::_enleverSommet" ref="a2c22cb6d5282d83c940872ec52327d5e" args="(Sommet *sommetAEnlever)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::_enleverSommet </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&#160;</td>
          <td class="paramname"><em>sommetAEnlever</em></td><td>)</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enlever un sommet à partir de son adresse. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le sommet a été enlevé, ne fait rien s'il n'existe pas </dd></dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">sommetAEnlever</td><td>L'adresse du sommet à enlever </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a9fbaf9ed9c0bd7b57b76d0dc0ea453d9"></a><!-- doxytag: member="Graphe::_getArc" ref="a9fbaf9ed9c0bd7b57b76d0dc0ea453d9" args="(Sommet *sommet1, Sommet *sommet2) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::<a class="el" href="class_graphe_1_1_arc.html">Arc</a> * <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::_getArc </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&#160;</td>
          <td class="paramname"><em>origine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&#160;</td>
          <td class="paramname"><em>destination</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Trouve l'adresse d'un arc entre deux sommets. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>L'adresse de l'arc recherché est retournée, 0 si aucun arc n'a été trouvé </dd></dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">origine</td><td>L'adresse du sommet d'origine </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">destination</td><td>L'adresse du sommet de destination </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>L'adresse de l'arc trouvé entre le sommet d'origine et le sommet de destination </dd></dl>

</div>
</div>
<a class="anchor" id="ac798e3b65595635aaf3e2f83e9a4c58e"></a><!-- doxytag: member="Graphe::_getSommet" ref="ac798e3b65595635aaf3e2f83e9a4c58e" args="(int numero) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::<a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> * <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::_getSommet </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numero</em></td><td>)</td>
          <td> const<code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Trouve l'adresse d'un sommet à partir de son numéro. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>L'adresse du sommet recherché est retournée </dd></dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numero</td><td>Le numéro du sommet </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aae4a7becaa21116b48dbe8d0fbd4a57d"></a><!-- doxytag: member="Graphe::_initPathFinding" ref="aae4a7becaa21116b48dbe8d0fbd4a57d" args="(const Objet &amp;eOrigine, const Objet &amp;eDestination, Sommet *&amp;origine, Sommet *&amp;destination)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::_initPathFinding </td>
          <td>(</td>
          <td class="paramtype">const Objet &amp;&#160;</td>
          <td class="paramname"><em>eOrigine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Objet &amp;&#160;</td>
          <td class="paramname"><em>eDestination</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&amp;&#160;</td>
          <td class="paramname"><em>origine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&amp;&#160;</td>
          <td class="paramname"><em>destination</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Initialise les sommets du graphe dans le but d'utiliser des méthodes pour trouver des chemins. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Le sommet d'origine et le sommet de destination existent </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le chemin a été correctement initialisé </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>Le sommet d'origine ou de destination n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">eOrigine</td><td>l'etiquette du sommet d'origine </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">eDestination</td><td>l'etiquette du sommet de destination </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">origine</td><td>L'adresse du sommet d'origine </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">destination</td><td>L'adresse du sommet de destination </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ad45ebb3761173879209aca61ed7d825b"></a><!-- doxytag: member="Graphe::_recupererChemin" ref="ad45ebb3761173879209aca61ed7d825b" args="(Sommet *destination, std::vector&lt; Objet &gt; &amp;chemin)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::_recupererChemin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a> *&#160;</td>
          <td class="paramname"><em>destination</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; Objet &gt; &amp;&#160;</td>
          <td class="paramname"><em>chemin</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Récupère le chemin à partir d'un vector dans les données sont inversées. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le chemin en ordre (non inversé) est retourné </dd></dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">destination</td><td>L'adresse de destition d'un sommet </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">chemin</td><td>Un vector de type Objet qui contient le chemin du parcours </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a3324e98fb20348bff3ffec78675b0ce5"></a><!-- doxytag: member="Graphe::ajouterArc" ref="a3324e98fb20348bff3ffec78675b0ce5" args="(int numOrigine, int numDestination, int cout)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::ajouterArc </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numOrigine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numDestination</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cout</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Ajout d'un arc au graphe. </p>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numOrigine</td><td>Le numéro du sommet d'origine </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">numDestination</td><td>Le numéro du sommet de destination </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cout</td><td>Le cout de l'arc//! </td></tr>
  </table>
  </dd>
</dl>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Les deux sommets doivent exister </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Un arc a été ajouté entre le sommet 'numeroOrigine' et le sommet 'numeroDestination' </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">bad_alloc</td><td>Pas assez de mémoire pour alloué le nouvel arc </td></tr>
    <tr><td class="paramname">logic_error</td><td>Un des deux sommets n'existe pas </td></tr>
    <tr><td class="paramname">logic_error</td><td>Il y a déjà un arc orienté entre ces deux sommets </td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a3324e98fb20348bff3ffec78675b0ce5_cgraph.png" border="0" usemap="#class_graphe_a3324e98fb20348bff3ffec78675b0ce5_cgraph" alt=""/></div>
<map name="class_graphe_a3324e98fb20348bff3ffec78675b0ce5_cgraph" id="class_graphe_a3324e98fb20348bff3ffec78675b0ce5_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="187,5,333,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a398d9e6777b28dd6a5ee1572f5128498"></a><!-- doxytag: member="Graphe::ajouterSommet" ref="a398d9e6777b28dd6a5ee1572f5128498" args="(int numero, const Objet &amp;etiquette)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::ajouterSommet </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numero</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Objet &amp;&#160;</td>
          <td class="paramname"><em>etiquette</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Ajout d'un sommet au graphe. </p>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">etiquette</td><td>Les donnees du sommet à ajouter </td></tr>
  </table>
  </dd>
</dl>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il y a assez de mémoire pour ajouter un sommet </dd></dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numero</td><td>Le numero du sommet à ajouter </td></tr>
  </table>
  </dd>
</dl>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il n'y a aucun sommet avec le même numéro dans le graphe </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Un sommet contenant les informations passées en argument a été ajouté au <a class="el" href="class_graphe.html" title="Classe représentant un graphe orienté, coloré dont les étiquettes sont des comparables.">Graphe</a> </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">bad_alloc</td><td>Il n'y a pas assez de mémoire pour ajouter un sommet </td></tr>
    <tr><td class="paramname">logic_error</td><td>Il y a un sommet avec le même numéro dans le graphe </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a866fbd9e68914829c900b2f3a2ef3565"></a><!-- doxytag: member="Graphe::arcExiste" ref="a866fbd9e68914829c900b2f3a2ef3565" args="(int numOrigine, int numDestination) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::arcExiste </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numOrigine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numDestination</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne l'existence d'un arc. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Les sommets doivent appartenir au graphe </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>L'un ou l'autre, ou les 2 sommets ne font pas partie du graphe </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numOrigine</td><td>Le numéro du sommet d'origine </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">numDestination</td><td>Le numéro du sommet de destination </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>True si un arc existe entre les deux sommets, false autrement </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a866fbd9e68914829c900b2f3a2ef3565_cgraph.png" border="0" usemap="#class_graphe_a866fbd9e68914829c900b2f3a2ef3565_cgraph" alt=""/></div>
<map name="class_graphe_a866fbd9e68914829c900b2f3a2ef3565_cgraph" id="class_graphe_a866fbd9e68914829c900b2f3a2ef3565_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="179,5,325,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a077802b65dad92e0d7e593abbca17478"></a><!-- doxytag: member="Graphe::bellmanFord" ref="a077802b65dad92e0d7e593abbca17478" args="(const Objet &amp;eOrigine, const Objet &amp;eDestination, std::vector&lt; Objet &gt; &amp;chemin)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::bellmanFord </td>
          <td>(</td>
          <td class="paramtype">const Objet &amp;&#160;</td>
          <td class="paramname"><em>eOrigine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Objet &amp;&#160;</td>
          <td class="paramname"><em>eDestination</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; Objet &gt; &amp;&#160;</td>
          <td class="paramname"><em>chemin</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Trouve le plus court chemin entre deux points en utilisant l'algorithme de Bellman-Ford et le retourne. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il y a assez de mémoire pour placer les composantes du chemin 'chemin' </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le cout total est retourné, -1 s'il n'y a pas de chemin </dd>
<dd>
Le graphe original reste inchangé </dd>
<dd>
La liste des étiquettes des sommets à parcourir est retournée dans le vector 'chemin' </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">bad_alloc</td><td>Il n'y a pas assez de mémoire pour placer le chemin dans 'chemin' </td></tr>
    <tr><td class="paramname">logic_error</td><td>Le sommet d'origine ou de destination n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">eOrigine</td><td>l'etiquette du sommet d'origine </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">eDestination</td><td>l'etiquette du sommet de destination </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">chemin</td><td>Un vector de type etiquette qui contient le chemin du parcours </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Le coût du parcours trouvé </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a077802b65dad92e0d7e593abbca17478_cgraph.png" border="0" usemap="#class_graphe_a077802b65dad92e0d7e593abbca17478_cgraph" alt=""/></div>
<map name="class_graphe_a077802b65dad92e0d7e593abbca17478_cgraph" id="class_graphe_a077802b65dad92e0d7e593abbca17478_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#aae4a7becaa21116b48dbe8d0fbd4a57d" title="Initialise les sommets du graphe dans le but d&#39;utiliser des méthodes pour trouver des chemins..." alt="" coords="205,5,368,32"/><area shape="rect" id="node5" href="class_graphe.html#ad45ebb3761173879209aca61ed7d825b" title="Récupère le chemin à partir d&#39;un vector dans les données sont inversées." alt="" coords="197,56,376,83"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a46ea944cd82af0d14b67ed66ac57261f"></a><!-- doxytag: member="Graphe::dijkstra" ref="a46ea944cd82af0d14b67ed66ac57261f" args="(const Objet &amp;eOrigine, const Objet &amp;eDestination, std::vector&lt; Objet &gt; &amp;chemin)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::dijkstra </td>
          <td>(</td>
          <td class="paramtype">const Objet &amp;&#160;</td>
          <td class="paramname"><em>eOrigine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Objet &amp;&#160;</td>
          <td class="paramname"><em>eDestination</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; Objet &gt; &amp;&#160;</td>
          <td class="paramname"><em>chemin</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Trouve le plus court chemin entre deux points en utilisant l'algorithme de Dijsktra et le retourne. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il y a assez de mémoire pour placer les composantes du chemin 'chemin' </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le temps de transmission total est retourné, -1 s'il n'y a pas de chemin </dd>
<dd>
Le graphe original reste inchangé </dd>
<dd>
La liste des sommets à parcourir est retournée dans le vector 'chemin' </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">bad_alloc</td><td>Il n'y a pas assez de mémoire pour placer le chemin dans 'chemin' </td></tr>
    <tr><td class="paramname">logic_error</td><td>Le sommet d'origine ou de destination n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">eOrigine</td><td>Nom du sommet d'origine </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">eDestination</td><td>Nom du sommet de destination </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">chemin</td><td>Un vector de type string qui contient le chemin du parcours </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Le coût du parcours trouvé </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a46ea944cd82af0d14b67ed66ac57261f_cgraph.png" border="0" usemap="#class_graphe_a46ea944cd82af0d14b67ed66ac57261f_cgraph" alt=""/></div>
<map name="class_graphe_a46ea944cd82af0d14b67ed66ac57261f_cgraph" id="class_graphe_a46ea944cd82af0d14b67ed66ac57261f_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#aae4a7becaa21116b48dbe8d0fbd4a57d" title="Initialise les sommets du graphe dans le but d&#39;utiliser des méthodes pour trouver des chemins..." alt="" coords="176,5,339,32"/><area shape="rect" id="node5" href="class_graphe.html#ad45ebb3761173879209aca61ed7d825b" title="Récupère le chemin à partir d&#39;un vector dans les données sont inversées." alt="" coords="168,56,347,83"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="aa97c99653199bf922b44e07de8be0a99"></a><!-- doxytag: member="Graphe::enleverArc" ref="aa97c99653199bf922b44e07de8be0a99" args="(int numOrigine, int numDestination)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::enleverArc </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numOrigine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numDestination</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enlève un arc du graphe. </p>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numOrigine</td><td>Le numéro du sommet d'origine </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">numDestination</td><td>Le numéro du sommet de destination </td></tr>
  </table>
  </dd>
</dl>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Les deux sommets identifiés par leur numéro doivent appartenir au graphe. </dd>
<dd>
Un arc reliant les deux sommets doit exister. </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe contient un arc en moins, le graphe inchangé sinon </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>Un des deux sommets, ou les deux, n'existent pas </td></tr>
    <tr><td class="paramname">logic_error</td><td>Il n'y a pas d'arc entre les 2 sommets </td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_aa97c99653199bf922b44e07de8be0a99_cgraph.png" border="0" usemap="#class_graphe_aa97c99653199bf922b44e07de8be0a99_cgraph" alt=""/></div>
<map name="class_graphe_aa97c99653199bf922b44e07de8be0a99_cgraph" id="class_graphe_aa97c99653199bf922b44e07de8be0a99_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="189,5,336,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a70470e6b8b0ea59097c1a9a96e631f45"></a><!-- doxytag: member="Graphe::enleverSommet" ref="a70470e6b8b0ea59097c1a9a96e631f45" args="(int numero)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::enleverSommet </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numero</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enlève un sommet du graphe ainsi que tous les arcs qui vont et partent de ce sommet. </p>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numero</td><td>Le numéro du sommet à enlever </td></tr>
  </table>
  </dd>
</dl>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il y a un sommet avec le numéro 'm_numero' dans le graphe </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le sommet identifié par 'm_numero' a été enlevé du graphe </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>Il n'y a aucun sommet avec le numéro 'm_numero' dans le graphe </td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a70470e6b8b0ea59097c1a9a96e631f45_cgraph.png" border="0" usemap="#class_graphe_a70470e6b8b0ea59097c1a9a96e631f45_cgraph" alt=""/></div>
<map name="class_graphe_a70470e6b8b0ea59097c1a9a96e631f45_cgraph" id="class_graphe_a70470e6b8b0ea59097c1a9a96e631f45_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a2c22cb6d5282d83c940872ec52327d5e" title="Enlever un sommet à partir de son adresse." alt="" coords="216,5,387,32"/><area shape="rect" id="node5" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="228,56,375,83"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="abdc4f27fc9498cc3814d03a97c87b7e7"></a><!-- doxytag: member="Graphe::estFortementConnexe" ref="abdc4f27fc9498cc3814d03a97c87b7e7" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::estFortementConnexe </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Détermine si le graphe est fortement connexe ou non. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>true est retourné si le graphe est fortement connexe, false est retourné sinon </dd></dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>true si le graphe est fortement connexe, false sinon </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_abdc4f27fc9498cc3814d03a97c87b7e7_cgraph.png" border="0" usemap="#class_graphe_abdc4f27fc9498cc3814d03a97c87b7e7_cgraph" alt=""/></div>
<map name="class_graphe_abdc4f27fc9498cc3814d03a97c87b7e7_cgraph" id="class_graphe_abdc4f27fc9498cc3814d03a97c87b7e7_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#aa6fafc310fd5a096f75d018c7404f9ed" title="Déterminer la fermeture transitive du graphe." alt="" coords="253,5,424,32"/><area shape="rect" id="node5" href="class_graphe.html#a9fbaf9ed9c0bd7b57b76d0dc0ea453d9" title="Trouve l&#39;adresse d&#39;un arc entre deux sommets." alt="" coords="472,5,589,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="afd8eb5bce922c62b2d5814dd95decf3e"></a><!-- doxytag: member="Graphe::estVide" ref="afd8eb5bce922c62b2d5814dd95decf3e" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::estVide </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Indique si la liste des sommets est vide. </p>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>True si le graphe ne contient pas de sommets, false autrement </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>

</div>
</div>
<a class="anchor" id="aa6fafc310fd5a096f75d018c7404f9ed"></a><!-- doxytag: member="Graphe::fermetureGraphe" ref="aa6fafc310fd5a096f75d018c7404f9ed" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt; <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::fermetureGraphe </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Déterminer la fermeture transitive du graphe. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Le graphe est correctement initialisé. </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>La fermeture transitive du graphe est retournée. </dd>
<dd>
Le graphe original reste inchangé. </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">bad_alloc</td><td>si pas assez de mémoire application de l'algorithme de Floyd-Warshall </td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_aa6fafc310fd5a096f75d018c7404f9ed_cgraph.png" border="0" usemap="#class_graphe_aa6fafc310fd5a096f75d018c7404f9ed_cgraph" alt=""/></div>
<map name="class_graphe_aa6fafc310fd5a096f75d018c7404f9ed_cgraph" id="class_graphe_aa6fafc310fd5a096f75d018c7404f9ed_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a9fbaf9ed9c0bd7b57b76d0dc0ea453d9" title="Trouve l&#39;adresse d&#39;un arc entre deux sommets." alt="" coords="224,5,341,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="ad63af90bd6395092dfe311a36f15833c"></a><!-- doxytag: member="Graphe::getComposantesFortementConnexes" ref="ad63af90bd6395092dfe311a36f15833c" args="(std::vector&lt; std::vector&lt; Objet &gt; &gt; &amp;composantes) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::getComposantesFortementConnexes </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; std::vector&lt; Objet &gt; &gt; &amp;&#160;</td>
          <td class="paramname"><em>composantes</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Détermine les composantes fortement connexes et les mémorise dans un conteneur passé en paramètre. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il y a assez de mémoire pour placer les composantes fortements connexes dans 'composantes' </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Les composantes fortement connexes du graphe sont placées dans 'composantes' </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">bad_alloc</td><td>Il n'y a pas assez de mémoire pour placer les composantes fortements connexes dans 'composantes' </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">composantes</td><td></td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_ad63af90bd6395092dfe311a36f15833c_cgraph.png" border="0" usemap="#class_graphe_ad63af90bd6395092dfe311a36f15833c_cgraph" alt=""/></div>
<map name="class_graphe_ad63af90bd6395092dfe311a36f15833c_cgraph" id="class_graphe_ad63af90bd6395092dfe311a36f15833c_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a2c22cb6d5282d83c940872ec52327d5e" title="Enlever un sommet à partir de son adresse." alt="" coords="336,5,507,32"/><area shape="rect" id="node5" href="class_graphe.html#a9fbaf9ed9c0bd7b57b76d0dc0ea453d9" title="Trouve l&#39;adresse d&#39;un arc entre deux sommets." alt="" coords="555,81,672,108"/><area shape="rect" id="node7" href="class_graphe.html#aa6fafc310fd5a096f75d018c7404f9ed" title="Déterminer la fermeture transitive du graphe." alt="" coords="336,107,507,133"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a5178a5335a20e3a549af0b69c9c83782"></a><!-- doxytag: member="Graphe::getCoutArc" ref="a5178a5335a20e3a549af0b69c9c83782" args="(int numOrigine, int numDestination) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::getCoutArc </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numOrigine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numDestination</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne le coût d'un arc passé en argument. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>L'arc doit exister </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>Le sommet source et/ou destination n'existent pas </td></tr>
    <tr><td class="paramname">logic_error</td><td>L'arc n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numOrigine</td><td>Le numéro du sommet d'origine </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">numDestination</td><td>Le numéro du sommet de destination </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Le coût de l'arc entre deux sommets </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a5178a5335a20e3a549af0b69c9c83782_cgraph.png" border="0" usemap="#class_graphe_a5178a5335a20e3a549af0b69c9c83782_cgraph" alt=""/></div>
<map name="class_graphe_a5178a5335a20e3a549af0b69c9c83782_cgraph" id="class_graphe_a5178a5335a20e3a549af0b69c9c83782_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="189,5,336,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="af6efac3e9c660c4aacfa05c6bcba7ddf"></a><!-- doxytag: member="Graphe::getEtiquetteSommet" ref="af6efac3e9c660c4aacfa05c6bcba7ddf" args="(int numero) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Objet <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::getEtiquetteSommet </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numero</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne l'étiquette d'un sommet. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Le sommet doit exister </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>Il n'y a pas de sommets dans le graphe </td></tr>
    <tr><td class="paramname">logic_error</td><td>Le sommet n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numero</td><td>Le numéro du sommet </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Le nom du sommet recherché </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_af6efac3e9c660c4aacfa05c6bcba7ddf_cgraph.png" border="0" usemap="#class_graphe_af6efac3e9c660c4aacfa05c6bcba7ddf_cgraph" alt=""/></div>
<map name="class_graphe_af6efac3e9c660c4aacfa05c6bcba7ddf_cgraph" id="class_graphe_af6efac3e9c660c4aacfa05c6bcba7ddf_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="243,5,389,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a0de2ca6fa1f02d95fde97306217d2031"></a><!-- doxytag: member="Graphe::getNumeroSommet" ref="a0de2ca6fa1f02d95fde97306217d2031" args="(const Objet &amp;etiquette) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::getNumeroSommet </td>
          <td>(</td>
          <td class="paramtype">const Objet &amp;&#160;</td>
          <td class="paramname"><em>etiquette</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne le numéro d'un sommet selon son etiquette. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Le sommet doit faire partie du graphe </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>Le sommet n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">etiquette</td><td>L'étiquette d'un sommet </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Le numéro du sommet recherché </dd></dl>

</div>
</div>
<a class="anchor" id="acf31ba4346b58850d69ba22ee75bdf48"></a><!-- doxytag: member="Graphe::getPointsArticulation" ref="acf31ba4346b58850d69ba22ee75bdf48" args="(std::vector&lt; Objet &gt; &amp;sommets)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::getPointsArticulation </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; Objet &gt; &amp;&#160;</td>
          <td class="paramname"><em>sommets</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Trouve les points d'articulation du graphe et les retourne. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il y a assez de mémoire pour placer les sommets dans 'sommets' </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>La liste de tous les sommets d'articulation sont retournés dans le vector 'sommets' </dd>
<dd>
Le graphe original reste inchangé//! </dd></dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">sommets</td><td>Un vector de type Objet qui contient tous les sommets d'articulation </td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_acf31ba4346b58850d69ba22ee75bdf48_cgraph.png" border="0" usemap="#class_graphe_acf31ba4346b58850d69ba22ee75bdf48_cgraph" alt=""/></div>
<map name="class_graphe_acf31ba4346b58850d69ba22ee75bdf48_cgraph" id="class_graphe_acf31ba4346b58850d69ba22ee75bdf48_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a70470e6b8b0ea59097c1a9a96e631f45" title="Enlève un sommet du graphe ainsi que tous les arcs qui vont et partent de ce sommet." alt="" coords="261,5,424,32"/><area shape="rect" id="node9" href="class_graphe.html#abdc4f27fc9498cc3814d03a97c87b7e7" title="Détermine si le graphe est fortement connexe ou non." alt="" coords="243,107,442,133"/><area shape="rect" id="node15" href="class_graphe.html#af6efac3e9c660c4aacfa05c6bcba7ddf" title="Retourne l&#39;étiquette d&#39;un sommet." alt="" coords="248,56,437,83"/><area shape="rect" id="node18" href="class_graphe.html#aedac4305a983b11ea0420ba80343635e" title="Retourne la liste des numéros des sommets dans un vecteur d&#39;entiers." alt="" coords="265,157,420,184"/><area shape="rect" id="node5" href="class_graphe.html#a2c22cb6d5282d83c940872ec52327d5e" title="Enlever un sommet à partir de son adresse." alt="" coords="491,5,661,32"/><area shape="rect" id="node7" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="503,56,649,83"/><area shape="rect" id="node11" href="class_graphe.html#aa6fafc310fd5a096f75d018c7404f9ed" title="Déterminer la fermeture transitive du graphe." alt="" coords="491,107,661,133"/><area shape="rect" id="node13" href="class_graphe.html#a9fbaf9ed9c0bd7b57b76d0dc0ea453d9" title="Trouve l&#39;adresse d&#39;un arc entre deux sommets." alt="" coords="709,107,827,133"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a998f2dd61188d540e7789b6ea631e548"></a><!-- doxytag: member="Graphe::listerEtiquetteSommets" ref="a998f2dd61188d540e7789b6ea631e548" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; Objet &gt; <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::listerEtiquetteSommets </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne la liste des étiquettes des sommets dans un vecteur. </p>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Un vector de type Objet qui contient une liste de toutes les étiquettes des sommets </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>

</div>
</div>
<a class="anchor" id="aedac4305a983b11ea0420ba80343635e"></a><!-- doxytag: member="Graphe::listerSommets" ref="aedac4305a983b11ea0420ba80343635e" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; int &gt; <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::listerSommets </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne la liste des numéros des sommets dans un vecteur d'entiers. </p>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Un vector de type int qui contient une liste de tous les numéros des sommets </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>

</div>
</div>
<a class="anchor" id="a73fe579de3baea2990bbefb2b0daf0c9"></a><!-- doxytag: member="Graphe::listerSommetsAdjacents" ref="a73fe579de3baea2990bbefb2b0daf0c9" args="(int numeroSommetsAdjacents) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; int &gt; <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::listerSommetsAdjacents </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numeroSommetsAdjacents</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne la liste des numéros des sommets adjacents au sommet passé en argument dans un vecteur d'entiers. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Le sommet doit appartenir au graphe </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>si le sommet n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numeroSommetsAdjacents</td><td>Le numéro du sommet dont on cherche les sommets adjacents </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Un vector de type int qui contient une liste de tous les numéros des sommets adjacents au sommet demandé </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a73fe579de3baea2990bbefb2b0daf0c9_cgraph.png" border="0" usemap="#class_graphe_a73fe579de3baea2990bbefb2b0daf0c9_cgraph" alt=""/></div>
<map name="class_graphe_a73fe579de3baea2990bbefb2b0daf0c9_cgraph" id="class_graphe_a73fe579de3baea2990bbefb2b0daf0c9_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="264,5,411,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a822c112c79faa409d2eeb95a9c2c4e7c"></a><!-- doxytag: member="Graphe::nombreSommets" ref="a822c112c79faa409d2eeb95a9c2c4e7c" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::nombreSommets </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne le nombre de sommets dans la liste des sommets. </p>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>Le nombre de sommets dans le graphe </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>

</div>
</div>
<a class="anchor" id="aff62a5ca152f992f32671db122d47455"></a><!-- doxytag: member="Graphe::operator=" ref="aff62a5ca152f992f32671db122d47455" args="(const Graphe &amp;source)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt; &amp; <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt; &amp;&#160;</td>
          <td class="paramname"><em>source</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Surcharge de l'opérateur d'affectation. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Il doit y avoir assez de mémoire. </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe a un contenu identique à 'source'. </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">bad_alloc</td><td>S'il n'y a pas assez de mémoire. </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">source</td><td>Le graphe à copier </td></tr>
  </table>
  </dd>
</dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_aff62a5ca152f992f32671db122d47455_cgraph.png" border="0" usemap="#class_graphe_aff62a5ca152f992f32671db122d47455_cgraph" alt=""/></div>
<map name="class_graphe_aff62a5ca152f992f32671db122d47455_cgraph" id="class_graphe_aff62a5ca152f992f32671db122d47455_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a1b8cfc5964a91ed326b4db134471d6e0" title="Copie d&#39;un graphe." alt="" coords="185,56,341,83"/><area shape="rect" id="node5" href="class_graphe.html#a8405369dbe4854dd624e140539717fab" title="Destruction du graphe." alt="" coords="390,5,557,32"/><area shape="rect" id="node7" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="400,56,547,83"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a1123929cab8c05d7fc3f7a4317e88edb"></a><!-- doxytag: member="Graphe::ordreEntreeSommet" ref="a1123929cab8c05d7fc3f7a4317e88edb" args="(int numero) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::ordreEntreeSommet </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numero</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne l'ordre d'entrée d'un sommet. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Le sommet doit exister </dd></dl>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>Le sommet n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numero</td><td>Le numéro du sommet </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>L'odre d'entrée d'un sommet </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a1123929cab8c05d7fc3f7a4317e88edb_cgraph.png" border="0" usemap="#class_graphe_a1123929cab8c05d7fc3f7a4317e88edb_cgraph" alt=""/></div>
<map name="class_graphe_a1123929cab8c05d7fc3f7a4317e88edb_cgraph" id="class_graphe_a1123929cab8c05d7fc3f7a4317e88edb_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#a9fbaf9ed9c0bd7b57b76d0dc0ea453d9" title="Trouve l&#39;adresse d&#39;un arc entre deux sommets." alt="" coords="257,5,375,32"/><area shape="rect" id="node5" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="243,56,389,83"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a48e32c28c0845c0e112a3a3ae7bdb882"></a><!-- doxytag: member="Graphe::ordreSortieSommet" ref="a48e32c28c0845c0e112a3a3ae7bdb882" args="(int numero) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::ordreSortieSommet </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numero</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne l'ordre de sortie d'un sommet. </p>
<dl class="pre"><dt><b>Précondition:</b></dt><dd>Le sommet doit exister </dd></dl>
<dl><dt><b>Exceptions:</b></dt><dd>
  <table class="exception">
    <tr><td class="paramname">logic_error</td><td>Le sommet n'existe pas </td></tr>
  </table>
  </dd>
</dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numero</td><td>Le numéro du sommet </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>L'odre de sortie d'un sommet </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_a48e32c28c0845c0e112a3a3ae7bdb882_cgraph.png" border="0" usemap="#class_graphe_a48e32c28c0845c0e112a3a3ae7bdb882_cgraph" alt=""/></div>
<map name="class_graphe_a48e32c28c0845c0e112a3a3ae7bdb882_cgraph" id="class_graphe_a48e32c28c0845c0e112a3a3ae7bdb882_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="240,5,387,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="af9a087a2a780133f651af51fb25de677"></a><!-- doxytag: member="Graphe::sommetExiste" ref="af9a087a2a780133f651af51fb25de677" args="(int numero) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::sommetExiste </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>numero</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retourne l'existence d'un sommet. </p>
<dl class="post"><dt><b>Postcondition:</b></dt><dd>Le graphe reste inchangé. </dd></dl>
<dl><dt><b>Paramètres:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">numero</td><td>Le numéro du sommet </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Renvoie:</b></dt><dd>True si le sommet existe, false autrement </dd></dl>

<p><div class="dynheader">
Voici le graphe d'appel pour cette fonction :</div>
<div class="dyncontent">
<div class="center"><img src="class_graphe_af9a087a2a780133f651af51fb25de677_cgraph.png" border="0" usemap="#class_graphe_af9a087a2a780133f651af51fb25de677_cgraph" alt=""/></div>
<map name="class_graphe_af9a087a2a780133f651af51fb25de677_cgraph" id="class_graphe_af9a087a2a780133f651af51fb25de677_cgraph">
<area shape="rect" id="node3" href="class_graphe.html#ac798e3b65595635aaf3e2f83e9a4c58e" title="Trouve l&#39;adresse d&#39;un sommet à partir de son numéro." alt="" coords="205,5,352,32"/></map>
</div>
</p>

</div>
</div>
<hr/><h2>Documentation des fonctions amies et associées</h2>
<a class="anchor" id="a418117b04914b57a9a0f6202b519ceee"></a><!-- doxytag: member="Graphe::operator&lt;&lt;" ref="a418117b04914b57a9a0f6202b519ceee" args="(std::ostream &amp;out, const Graphe&lt; U &gt; &amp;g)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
<div class="memtemplate">
template&lt;class U &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::ostream&amp; operator&lt;&lt; </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_graphe.html">Graphe</a>&lt; U &gt; &amp;&#160;</td>
          <td class="paramname"><em>g</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Documentation des données membres</h2>
<a class="anchor" id="acf9528aa62599ce05830f02df42af339"></a><!-- doxytag: member="Graphe::listSommets" ref="acf9528aa62599ce05830f02df42af339" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_graphe_1_1_sommet.html">Sommet</a>* <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::<a class="el" href="class_graphe.html#acf9528aa62599ce05830f02df42af339">listSommets</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Liste des sommets du graphe. </p>

</div>
</div>
<a class="anchor" id="a68b553a71b69dba498e36aa2f22525af"></a><!-- doxytag: member="Graphe::nbSommets" ref="a68b553a71b69dba498e36aa2f22525af" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Objet&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="class_graphe.html">Graphe</a>&lt; Objet &gt;::<a class="el" href="class_graphe.html#a68b553a71b69dba498e36aa2f22525af">nbSommets</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Le nombre de sommets dans le graphe. </p>

</div>
</div>
<hr/>La documentation de cette classe a été générée à partir des fichiers suivants :<ul>
<li><a class="el" href="_graphe_8h.html">Graphe.h</a></li>
<li><a class="el" href="_graphe_8hpp.html">Graphe.hpp</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="class_graphe.html">Graphe</a>      </li>
      <li class="footer">Généré le Mon Oct 28 2013 09:31:45 pour TP2 air-GLOIFT par&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </li>
    </ul>
  </div>

</body>
</html>
